Intelligent management of a plurality of communications links

ABSTRACT

Techniques are disclosed, for intelligent management of multiple communications links. One communications link can be used to bring up another communications link with little or no user input. Selective enablement/disablement of one or more of the communications links is based on system needs and, other criteria. Utilizing one more-secure communications link to improve security on another less-secure communications link between the same devices is also contemplated.

TECHNICAL FIELD

The disclosure herein relates generally to communications betweendevices over a plurality of communications links.

BACKGROUND

Many devices include interfaces allowing them to communicate with otherdevices, Such interfaces include different forms of wireless interfaceshaving different characteristics and capabilities. Examples of suchwireless interfaces include cellular radios, WTFI, and Bluetooth. Suchwireless interfaces are often included in devices such as personalcomputers, smartphones, game consoles, and tablets.

Bluetooth is a wireless standard that allows data to be exchangedbetween devices over short distances. The Bluetooth Smart or Bluetooth4.0 specification includes Classic Bluetooth (BTC) as well as BluetoothLow Energy (BLE). BTC reflects the traditional implementation ofBluetooth prior to the introduction of BLE, and BTC is supported on manylegacy devices that do not support BLE. For example, some older smartphones only support BTC, while newer smartphones support both BTC andBLE.

While both BTC and BLE provide the ability to communicate data betweendevices, they each have their own advantages and disadvantages. Forexample, BTC provides higher bandwidth and works well for larger sizedata transfers. However, while BTC may be able to support transferringlarge amounts of data corresponding to music, pictures, or phone calls,it normally consumes more power than BLE. BLE provides the ability tosend smaller amounts of data in a low-energy manner. While more powerefficient for small transfers, BLE is not as secure as BTC, therebyrendering BLE connections more susceptible to eavesdropping. BLE alsohas a greater physical range than BTC, and therefore can allowcommunications between devices over greater distances.

In addition to Bluetooth, other wireless interfaces are available thatalso provide certain advantages and disadvantages. In such wirelessinterfaces it is often the case that a user can achieve greater databandwidth at the expense of higher power consumption, more complexhardware for support, and greater cost in general. As portable devicescontinue to become more complex, more options for transferring data arepresented. Therefore, it is desirable to provide techniques to allow forintelligent usage of available communications links on devices tofacilitate data transfers in a manner that provides adequate bandwidthwith reduced power consumption and cost.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a flow chart of a method for management of communicationslinks in accordance with an exemplary embodiment;

FIG. 2 is a flow chart of a method for management of communicationslinks in accordance with another exemplary embodiment; and

FIG. 3 is a block diagram of devices supporting a plurality ofcommunications links for data transfer between the devices in accordancewith an exemplary embodiment.

DETAILED DESCRIPTION

The following detailed description is merely illustrative in nature andis not intended to limit the embodiments of the subject matter or theapplication and uses of such embodiments. Any implementation describedherein as exemplary is not necessarily to be construed as preferred oradvantageous over other implementations.

For simplicity and clarity of illustration, the Figures depict thegeneral methodology and/or manner of construction of the variousembodiments. Descriptions and details of well-known features andtechniques may be omitted to avoid unnecessarily obscuring otherfeatures.

Terms of enumeration such as “first,” “second,” “third,” and the likemay be used for distinguishing between similar elements and notnecessarily for describing a particular spatial or chronological order.These terms, so used, are interchangeable under appropriatecircumstances.

The terms “comprise,” “include,” “have” and any variations thereof areused synonymously to denote non-exclusive inclusion. The term“exemplary” is used in the sense of “example,” rather than “ideal.”

In the interest of conciseness, conventional techniques, structures, andprinciples known by those skilled in the art may not be describedherein, including, for example, the specific protocols for wirelessinterfaces and circuits for implementing such interfaces included ondevices.

During the course of this description, like numbers may be used toidentify like elements according to the different Figures thatillustrate the various exemplary embodiments. It is to be understood byany skilled in the art that the methods described below can beimplemented on a computing device employing software modules and one ormore processors and that the terms method, process, step, and action canbe used to describe events occurring in one or more software modulesimplemented on a computing device.

Devices such as smartphones, laptops, and tablets include significantcomputing power that allows users to accomplish many tasks that wouldnot have been possible with previous generation devices. Such devicestypically provide a connection to large networks, such as the interact,that allow users to transfer data associated with certain applicationsrunning on the devices. Such devices also provide connections to usercommunication services through, for example, a cellular network or theinternet, that allow user communication by voice, messaging, or email.

Other associated devices are designed to work in coordination withdevices such as smartphones, where the associated devices may not havethe same amount of computing power or connectivity features. Forexample, a peripheral device such as a smartwatch may provide morelimited resources in terms of memory and may not provide a directconnection to cellular services or the interact. Instead, suchassociated devices can leverage, for example, a smartphone to provideaccess to the internet and other services such as text messages, email,and telephone services. In an example in which a smartwatch is pairedwith a smartphone, both devices include circuitry that allows for one ormore communications links to be established between the devices for datatransfers.

Many different communications protocols are currently available, andfurther refinements to such protocols are continuously being proposedand adopted. For example, Classic Bluetooth (BTC) has for many yearsprovided a relatively low cost and convenient way to enable datatransfers between devices over short distances. BTC has adequatebandwidth to support data associated with music, telephone calls, andphotographs. For example, BTC interfaces in automobiles allow dataassociated with a cellular telephone call on a smartphone to betransferred to the audio/visual system in the car to allow the user tomake and receive hands-free calls, Similarly, BTC headsets allow voicedata to be transferred between the headset and a correspondingsmartphone. In the context of communications links, BTC providesreasonable bandwidth over short distances.

A more recently developed protocol is Bluetooth Low Energy (BLE), WhileBLE provides lower power consumption than BTC, it is less secure and ismore bandwidth limited, thereby making it less useful for applicationsrequiring large data transfers such as telephone calls, music,photographs, and the like, BLE does allow for communication over greaterdistances, and the lower power consumption associated with BLE isespecially desirable in devices in which battery life is important.

Other wireless communications links, including cellular service andWIFI, provide other advantages, but are often more costly and complex.As one of ordinary skill in the art appreciates, different deviceshaving different levels of complexity and cost will include one or manycommunication interfaces, where the specific interfaces provided on thedevice will depend on many factors. Being able to intelligently leverageavailable communications links in an optimal manner to achieve the datatransfer objectives with minimal cost and power consumption can helpimprove device performance and extend the battery life. Intelligentmanagement of such communications links can also allow for a better userexperience in that the user can rely on the devices themselves todetermine the best available communications link for various tasks,thereby avoiding undue power consumption or inadequate data bandwidthfor the applications the user is executing.

Intelligent management of available communications links can includeleveraging an already established communications link to establish asecond communications link that may have different characteristics. Onelink can then be used to help improve security on the other link or toperform other verification procedures that ensure eavesdropping byunauthorized users is not permitted. Dynamic switching between thecommunications links based on the bandwidth needs can be used toselectively employ higher bandwidth links when needed, while poweringdown such links and using lower-bandwidth links with lower powerconsumption when high bandwidth is no longer needed. Similarly, thehigher range of some links (e.g. BLE vs. BTC) can be used when devicesare more physically distant. In such an instance, a later determinationthat the devices are within the range of a different communications linkhaving more desirable attributes (e.g., higher bandwidth BTC) may resultin disabling the higher-range link and bringing up the shorter-range,higher-bandwidth link.

The control mechanisms for supporting the intelligent management of thecommunications links can be centered in one device or distributed suchthat either device (or any device in the case of an ad-hoc network) cancontrol the particular communications links that are being utilized bythe respective devices. For example, in the context of asmartwatch-smartphone system, software running on the smartphone maydetermine that BTC is initially preferable in order to facilitate datatransfers associated with certain applications, where the software laterdetermines that BLE is preferable as high bandwidth is no longer neededand power savings is desirable. In another scenario, while thesmartwatch and smartphone are initially communicating over BLE in orderto conserve power, the smartwatch may determine that a large datatransfer to the smartphone is needed, and, as a result, the smartwatchmay initiate disabling BLE and re-establishing a BTC link.

The intelligent management of the various links can be furtherfacilitated by allowing users or developers of applications to specifywhen a particular link should be utilized. For example, an applicationdeveloper may know when the application will need additional bandwidthand may include commands that switch between higher bandwidth links,such as BTC, and lower-cost or power-saving links, such as BLE, based onthe known bandwidth needs of the application. Similarly, while anintelligent control system may determine that a lower-bandwidth link isadequate for a particular data transfer and would normally select thatlink based on the advantages it provides e.g. power savings, lower cost,increased security, etc.), a user may be to pay an extra cost, consumemore power, or compromise some aspects of security in order toaccomplish the data transfer more quickly. As such, in some embodiments,parameters entered by the user or specified by an application may betaken into account when determining the appropriate link to utilize atany one point in time.

In order to aid in the description of embodiments of the invention, asmartphone-smartwatch system is used herein as a typical exampleembodiment. While providing an illustrative example for the techniquesdescribed, such example embodiments should not be viewed as limiting. Asone of ordinary skill in the art appreciates, many other devices thatinclude support for multiple communications links would benefit from thetechniques described herein.

FIG. 1 illustrates a flow diagram corresponding to a method forintelligently managing a plurality of communications links. At step 102,a first device detects a wireless signal originating from a seconddevice. The detected wireless signal indicates availability of a firstwireless communications link. In one embodiment, the first device is asmartphone and the second device is a smartwatch. In such an embodiment,the smartphone detects the presence of the smartwatch based on a signaltransmitted by the smartwatch. For example, the smartphone may beinstructed to look for a signal from the smartwatch or it may simplydetect a periodic signal emitted by the smartwatch indicating that thesmartwatch is capable of connecting with the smartphone.

At step 104, after the first device has detected the wireless signalfrom the second device, the first device sends first communications linksetup information corresponding to establishing the first communicationslink. In one example embodiment, the first communications linkcorresponds to a BTC link, and the first device, which is a smartphone,sends information to the second device, which is a smartwatch, thatallows the BTC link to be established between the two devices. Suchinformation may include address information for the smartphone. Inresponse to the information sent to the second device, the second devicemay respond with information needed by the first device to establish thefirst communications link. Such information would be received by thefirst device and used in establishing the first communications link.

Once the first communications link is established, that existingcommunications link can be used to bring up or “bootstrap” a secondcommunications link. After the first communications link is in place,the first device sends a first command over the first communicationsfink at step 106. The first command is configured to cause the seconddevice to begin advertising availability of a second communicationslink, which is another wireless communications link having differentcharacteristics than the first communications link. In some embodiments,prior to sending the first command, the first device prompts a user witha query as to whether to initiate communication with respect to thesecond communications link such that the user can decide whether or notto enable the second communications link. In other embodiments,initiating communication with respect to the second communications linkmay always occur or may be based on instructions received fromapplications running on the first device or parameters alreadyconfigured by the user on the first device.

In an example embodiment, step 106 may include the smartphone using theestablished BTC link to instruct the smartwatch to begin advertising itsavailability to establish a BLE link. Such advertising typicallyincludes periodically broadcasting a packet that may include the BLEaddress of the smartwatch. If the smartphone does not detect a responsefrom the smartwatch within a predetermined period of time, thesmartphone may repeat the issuance of the command. Because theadvertising by the smartwatch is in direct response to instructions fromthe smartphone based on its desire to pair with the smartwatch over BLE,the advertising may be “high-power” advertising where a packet is sentmore frequently than might normally occur absent a specific directive toadvertise. Because advertising consumes power on the smartwatch, atimeout may be associated with the advertising such that the smartwatchdoes not continue to advertise and consume power if a response to itsadvertising is not received within a predetermined period of time.

At step 108, the first device receives information corresponding to thesecond communications link over the first communications link. In someembodiments, the information corresponding to the second communicationslink is the address for the second device on the second communicationslink. In other embodiments, the information provides the first devicewith other details regarding the second communications link that allowthe second communications link to be established. At step 110, the firstdevice uses the information received over the first communications linkto facilitate establishing the second communications link. In oneembodiment, the first device uses an address provided over the firstcommunications link to connect with the second device and establish thesecond communications link. For example, a smartwatch may send a BLEaddress over the BTC link to a smartphone that uses that address toestablish the BLE link.

Because some communications links provide more secure data transfersthan others, some embodiments described herein use more securecommunications links to enhance the security of less securecommunications links. For example, the method depicted by the flowdiagram of FIG. 1 further includes step 112 at which the secondcommunications link is validated using the first communications link. Inone embodiment, the first device receives a security code over the firstcommunications link. For example, the security code may be a codegenerated by a smartwatch that is sent to a smartphone. The first devicecan then send verification information corresponding to the securitycode back to the second device over the second communications link.Thus, if the first communications link is amore secure link, such as aBTC link, the security code generated by the second device will only bereceived by the first device. If the verification information, which maybe the security code itself or some other response derived using thesecurity code, is not returned to the second device over the secondcommunications link, the second device will know that the secondcommunications link that it has established or is in the process ofestablishing is not valid. When such an invalid communications link isdetected, the link can be disabled, and, in some embodiments, the usercan be notified of an attempt to eavesdrop such that additional securitymeasures can be taken.

In a specific example, a smartwatch may generate a random security codethat it sends over a BTC link to the smartphone. The smartphone maysimply return the code to the smartwatch over the BLE link or it may usethe code to derive some other verification information that is sent backover the BLE link. If the smartwatch determines that the expectedverification information has been received from the smartphone, it knowsthat the BLE link is properly set up with the appropriate device andtherefore valid. In such a scenario, if an eavesdropper notices whenadvertising by the smartwatch commences and attempts to connect to thesmartwatch, the eavesdropper will not be aware of the security code thathad been sent over the more secure BTC link. As such, the eavesdropperwill be unable to connect to the smartwatch.

Other techniques may be used to leverage one link that is more secure toimprove security with respect to a second, less-secure link. Forexample, the first device may receive a first security code over thefirst communications link and a second security code over the secondcommunications link. The first device can then compare the first andsecond security codes or correlate the first and second security codesin some other manner to verify the second communications link. Becauseone of the codes is sent over the more-secure link, an eavesdropperwould be unable to provide the needed code on the less-securecommunications link.

In yet other embodiments, other out-of-band channels may be used toauthenticate a communications link. For example, authentication may bebased on having one device display a particular code or image, where theother device is able to capture or detect that image to confirm, eitherbased on having provided information to the other device prompting thedisplayed, image or based on information received from the other deviceindicating what the image should be, that the other device is displayingthe proper image or code. In a specific example, a smartphone could senda particular Quick Response (QR) code to a smartwatch over a BLE link.The smartwatch then displays the QR code, and the phone, through the useof a camera, can detect the QR code to verify that the smartwatchreceived the code sent over the BLE link.

Another verification technique uses a “bump” between the devices toverify a communications link. Such a “bump” is a known technique thatrelies on variables and sensor data on the devices to determine that thetwo devices have been bumped together. The variables and sensor data mayinclude location of the device, accelerometer readings, and an IPaddress. Similarly, a vibration generated by one device could becorrelated with detection of the vibration on the other device (e.g.with an accelerometer). Such exchanges allow devices to physicallyconfirm their identities with respect to a communications link.

Thus, one of the communications links can be used to assist inestablishing the other communications link in a manner than minimizes oreliminates the need for any interaction with the first or second deviceon the part of the user.

Once both the first and second communications links have beenestablished, intelligent usage of the links includes disabling one ofthe communications links at step 114. For example, in the case of asmartphone communicating with a smartwatch over BTC and BLE, if the datatraffic and applications on the devices do not require the addedsecurity, greater bandwidth, or other features of BTC, the BTC link maybe disabled while the BLE link is maintained. The BLE link consumes lesspower than the BTC link, thereby improving battery life of thesmartwatch and smartphone. If it is later determined that the featuresof the BTC link are needed, the BTC link can be re-established using theBLE link. At that point, it may be desirable to disable the BLE link tosave power as the communications between the devices can be handled overthe BTC link until it is determined that the features of BTC are nolonger needed. The BTC link can then be used to re-establish the BLElink, and the BTC link can be disabled once again.

In order to keep the user apprised, as to which of the communicationslinks are currently available for data traffic, one or more of thedevices can include a display, where information regarding thecommunications links is shown on the display. For example, the displaycan show whether both BLE and BTC are available and/or whethercommunications links corresponding to those protocols are currentlyenabled.

In the specific example of a system with both a BTC and a BLE link, ifboth links are active, the Bluetooth specification currently mandatesthat BLE traffic be sent over the BTC link. As such, the power savingsexpected with BILE traffic is not realized. In order to obtain the powersavings, the BTC link is disabled, thereby forcing the BLE traffic totravel over the more power-efficient BLE link.

Disabling one of the first and second communications links may beaccomplished by the first device sending a command to the second deviceto disable the connection to be disabled. In such an embodiment, a latercommand sent over the maintained link may indicate that the disabledlink should be re-established. In other embodiments, disabling isaccomplished by the first device simply dropping the communications linkto be disabled.

Determining which of the communications links should be maintained andwhich should be disabled can be based on a number of factors. In someembodiments, an application running on the first device may determinewhich link should be used while that application is running. Forexample, an application that sends a large amount of data from asmartphone to a smartwatch can specify that BTC should be used. In otherembodiments, control circuitry on the device may determine which link isappropriate based on an aggregation of the bandwidth needs for thecommunications between the devices. Such circuitry may rely onparameters on the device in making the decision as to which link isappropriate. Such parameters may include specifications corresponding tothe device characteristics, user configurable parameters, costdeterminations, or parameters that are included in, or modified by,applications on the device.

As noted above, BLE has a greater physical range than RTC. As such, if aBTC link between the devices is lost because the devices are separatedby too much distance, the BLE link may be maintained. Later the BTC linkcan be reestablished when physical proximity of the devices allows forthe BTC communication. BLE also allows for a reasonable determination asto physical distance between two devices connected by a BLE link. Suchdistance determinations can allow different links to be turned on basedon the positional information provided. Further examples of the use ofsuch distance information include “beacons” or other devices that areconstantly advertising a particular address that allows a BLE devicedetecting that advertising to know its approximate location. In oneexample, a BLE beacon may indicate that presence of WIFI. If the rangeof BLE is, for example, 100 meters, while the range of the WIFI is 25meters, BLE can be used to inform the device when it is in range of theWIFI communications link. In other embodiments, non-wireless “beacons”may be employed. For example, a constant source of light or sound mayindicate the location of a communication port providing an availablecommunications link for the device. As a user approaches the beacon, theinformation provided by the beacon can be detected by the device andused as a trigger to bring up a particular communications link.

In addition to the first device making a selection as to which of thecommunications links is to be maintained, a command or other indicationcan be sent from the second device to the first device instructing thefirst device to bring up a particular communications link. For example,if a smartwatch determines that it needs to do a large data transfer, itcan send a command to the smartphone over a BLE link instructing thesmartphone to re-establish a BTC link and then disable the BLE link.Thus, the intelligent management of the available communications linksis able to take into account the needs of both devices, the user, andthe applications running on the devices.

FIG. 2 illustrates another embodiment of a method for utilizing aplurality of communications links. The actions depicted in FIG. 2 arefrom the perspective of a device that performs the advertising withrespect to a second communications link in contrast to the device thatsends a command asking the other device to perform that advertising. Inone example embodiment, the actions of FIG. 2 correspond to thoseperformed by a smartwatch that transfers data with a smartphone usingboth BTC and BLE links. In discussing the flow diagram of FIG. 2, suchan example embodiment is assumed in order to aid in describing theactions performed by the respective devices. The use of such an exampleembodiment is not intended to limit the teachings provided herein, andone of ordinary skill in the art appreciates that devices other than asmartwatch and a smartphone can practice the actions described in thecontext of FIG. 2. Moreover, while the specific example communicationslinks are described as BTC and BLE links between the smartphone andsmartwatch, other communications links may be managed in the same orsimilar way in other embodiments.

At step 202 a wireless signal originating from the smartphone isdetected by the smartwatch. The wireless signal indicates theavailability of a first communications link. In one example embodiment,the first communications link is a BTC link. At step 204, the smartwatchsends link setup information for the first communications link to thesmartphone, where the information corresponds to establishing the firstcommunications link.

At step 206, a command is received by the smartwatch over the BTC link,where the command instructs the smartwatch to begin advertisingavailability of a second communications link. The second communicationslink is preferably another wireless communications link, and, in theexample embodiment, the second communications link is a BLE link. Atstep 208, the smartwatch advertises the availability of the secondcommunications link in response to the received command. As discussedabove with respect to FIG. 1, because the advertising is in response toa specific command directed at establishing a BLE link, the advertisingmay be “high-power” in the sense that packets are sent more frequentlyby the smartwatch. At step 210, the smartwatch determines whether it hasgotten a response to its advertising within a predetermined periodamount of time. Because the advertising consumes power, in someembodiments it is useful to determine that the smartphone is notresponding to the advertising such that the advertising can beterminated in order to save power. As such, if it is determined at step210 that a response has not been received within the predetermined timeperiod, the smartwatch will stop advertising the BLE link at step 212.

If a response to the advertising is received within the predeterminedperiod of time, at step 214 setup information included in the responseis used by the smartwatch to facilitate establishing the secondcommunications link, which, in the example embodiment, is a BLE link. Insome embodiments, authentication of the second communications link isperformed at step 216. Because BLE is inherently insecure, the BTC linkcan be used to provide secure communications between the smartwatch andsmartphone that allow the BLE link to be validated. As discussed abovewith respect to FIG. 1, such validation may include out of bandoperations utilizing, for example, the display of the watch, or it mayinclude the watch generating one or more security codes that are sent tothe smartphone.

In one embodiment, the smartwatch generates a first security code andsends that code to the smartphone over the BTC link. The smartwatch alsogenerates a second security code that is sent over the BLE link.Validation can then be performed by the smartphone based on the twosecurity codes.

In another embodiment, the smartwatch generates a security code that issent to the smartphone over the more-secure BTC link. The smartphonethen sends a responsive code over the BLE link to the smartwatch, and,once received by the smartwatch, the responsive code can be comparedwith the security code to determine if the BLE connection is in factwith the device to which the security code had been sent. If thecomparison determines that the connection is not valid, the smartwatchcan terminate the BLE link. Because an invalid link likely indicates thepresence of an attempted eavesdropper, the smartwatch may also providean alert corresponding to the determination such that the user of thesmartwatch is aware of the eavesdropping attempt.

In addition to providing additional security with respect toestablishing the connection, the more secure communications link canalso be used to enhance other aspects of the security on the less-securelink. For example, security information such as an encryption key can besent over the more secure link and then used in transferring data overthe less secure link.

Once both the BLE and BTC links have been established or the use of theinitial link is no longer necessary to establish the second, thesmartwatch can disable one of the links at step 218. As discussed above,the control of which of the links is maintained and which is disabledmay be performed by the smartwatch, the smartphone, or by either devicebased on criteria of which each is aware. For example, the smartwatchmay determine that a particular application running on the smartphonerequires a particular one of the communication links and therefore willmaintain that link while disabling the other. For example, if thesmartwatch includes a camera and a picture is taken, the amount of dataassociated with pictures may result in the smartwatch determining thatthe BTC link should be used to send the data to the smartphone. Thedetermination could be based on the mere fact that an application usinga camera is active or it may be based on a determination that thebandwidth for a picture or group of pictures that have already beentaken requires BTC instead of BLE. Parameters stored on the smartwatchcan also be used in making the determination as to which of the links ismaintained, where the parameters may be, for example, user-configurable,static, or set based on a particular application being executed on thesmartwatch.

One of ordinary skill in the art appreciates that while the presentdescription focuses on choosing one of two possible communications linksat any particular point in time, there may be times at which multiplecommunications links are maintained as active as different traffic maybe able to benefit from the characteristics of the different links. Asan example, if it were permissible to send BLE traffic over a BLE linkwhen a BTC link is also active between two devices, there may bescenarios where it is desirable to maintain both links simultaneously toallow separate traffic to flow over the separate links.

In one embodiment, disabling one of the communications links by thesmartwatch can be accomplished by the smartwatch simply dropping thecommunications link. In other embodiments, the smartwatch sends acommand or other indication to the smartphone indicating which of thecommunications links is to be maintained and which is to be disabled,and the smartphone responds accordingly. In yet other embodiments, thedirective to maintain or disable one of the communications links may besent from the smartphone to the smartwatch, where the smartwatchreceives a command and disables one of the communications links inresponse to the command.

FIG. 3 illustrates a block diagram of a system including devices 310 and350. Each of devices 310 and 350 includes at least one antenna 312, 352,respectively, that facilitates transmission and reception of wirelesssignals. Device 310, which in one embodiment is one of a smartphone,tablet, laptop, or other computing device, includes a display 322 thatmay present an interface that allows a user to interact with the device.In other embodiments, device 310 may not include a display, and insteadmay provide the ability to connect to an external display or some othermeans of interacting with a user. Device 310 includes a networkinterface 314 that allows the device 310 to connect to a network such asthe internet. The network interface 314 may be a WIFI interface, acellular interface, or other interface that allows for communicationwith the external network. Device 310 also includes a link interface 316for facilitating communications links with device 350 and other deviceshaving the ability to establish such links. In one embodiment, the linkinterface 316 supports both BTC and BLE links. As one of ordinary skillin the art appreciates, network interface 314 and link interface 316 maybe circuits that include discrete components or are integrated onto oneor more chips.

Device 310 typically includes input/output (I/O) capability based on,for example, a keyboard or touchscreen, which are not shown. Device 310also includes a processor 320 and memory 318. The device 310 may includeone or more processors 320, such that the processor 320 is a singlecentral-processing unit, or a plurality of processing units, commonlyreferred to as a parallel processing environment. The processor 320 maybe a microcontroller that includes other aspects of the device 310,including memory 318, the network interface 314, and the link interface316.

The processor 320 in device 310 is capable of executing a computerprogram to execute a computer process. Data and program files may beinput to the device 310, which reads the files and executes the programstherein. Programs and configuration parameters, such as those discussedabove, may be stored in memory 318. Also contemplated herein is anon-transitory computer readable medium that stores a program thatcauses the processor 320 to execute a process, where the process mayinclude the steps shown and described above with respect to FIGS 1 and2. Such a program or a part thereof can be stored in various types ofmedia for retention, distribution, etc. The contemplated tangiblecomputer-readable memory media include memory devices (SDRAM, DDR SDRAM,RDRAM, SRAM, flash memory, and various types of ROM, etc.), as well asstorage media or memory media such as magnetic (e.g., disk) or opticalmedia (e.g., CD, DVD, and related technologies, etc.). The tangiblecomputer-readable memory media may be either volatile or nonvolatilememory.

Device 350, which in one embodiment is a smartwatch or other peripheraldevice, also includes a display 362 that may present an interface thatallows a user to interact with the device. In other embodiments, device350 does not include a display. Device 350 includes a link interface 356for facilitating communications links with device 310 and other deviceshaving the ability to establish such links. In one embodiment, the linkinterface 356 supports both BTC and BLE links. While not shown, device310 may also include other user input/output mechanisms. Moreover,device 310. While shown to be simpler than device 310 in that it lacks anetwork interface, may include a network interface that allows thedevice 350 to connect to a network such as the internet. As is the casewith network interface 314, the network interface that may be present indevice 350 may be a WIFE interface, a cellular interface, or otherinterface that allows for communication with the external network.

The device 350 includes a processor 360 and memory 358, which likeprocessor 320 and memory 318 of device 310 may include many variationsof processor(s) or memories. As was the case with device 310, device 350stores or receives software that, when executed by the processor 360,allows the device 350 to practice some or all of the steps discussedabove in the context of FIGS. 1 and 2.

Thus, devices 310 and 350 represent two example devices that cancommunicate over multiple communications links via their respective linkinterfaces 312 and 352. As discussed and described above with respect toFIGS. 1 and 2, providing intelligent management of the communicationslinks between devices 310 and 350 has many advantages, includingimproved performance, reduced cost, increased security, and reducedpower consumption.

Software for execution by the processor 320 may include applicationsdownloaded from the network, where, when extracted or executed by theprocessor 320 cause additional data to be sent to device 350 for storagein memory 358 and execution by processor 360. Such applications therebyinclude execution aspects to be performed by device 310 as well asdevice 350. For example, an application may relate to receiving datafrom the internet, where the application software causes the device 310to selectively forward portions of the data to the device 350 over oneor more of the communications links. A portion of the applicationsoftware specific to the device 350 that is executed by the processor360 may then use the transferred data to display information associatedwith the data.

While exemplary embodiments have been presented above, it should beappreciated that many variations exist. Furthermore, while thedescription focuses on smartphones and smartwatches in exemplaryembodiments, the teachings may be applied to various devices thatcommunicate over multiple communications links. It should also beappreciated that the exemplary embodiments are only examples, and arenot intended to limit the scope, applicability, or configuration of theinventions in any way.

What is claimed is:
 1. A method comprising: detecting, by a firstdevice, a wireless signal originating from a second device, the wirelesssignal indicating availability of a first communications link, the firstcommunications link being a wireless communications link; sending, bythe first device, first communications link setup informationcorresponding to establishing the first communications link between thefirst device and the second device; sending, by the first device, afirst command over the first communications link, the first commandconfigured to cause the second device to begin advertising availabilityof a second communications link, the second communications link beinganother wireless communications link having different characteristicsthan the first communications link; receiving, by the first device overthe first communications link, information corresponding to the secondcommunications link; and using, by the first device, the informationcorresponding to the second communications link to facilitateestablishing the second communications link.
 2. The method of claim 1,wherein the information corresponding the second communications linkincludes an address for the second device.
 3. The method of claim 1,further comprising: receiving, by the first device over the firstcommunications link, a first security code originating from the seconddevice; receiving, by the first device over the second communicationslink, a second security code originating from the second device; andverifying the second communications link using the first and secondsecurity codes.
 4. The method of claim 1, further comprising: receiving,by the first device over the first communications link, a security codeoriginating from the second device; and sending, by the first deviceover the second communications link, verification informationcorresponding to the security code.
 5. The method of claim 1, furthercomprising, disabling, by the first device, one of the firstcommunications link and the second communications link to produce adisabled communications link, wherein a maintained communications linkcorresponds to one of the first communications link and the secondcommunications link not disabled.
 6. The method of claim 5, wherein thedisabling further comprises sending, by the first device, a secondcommand over one of the first communications link and the secondcommunications link.
 7. The method of claim 6, further comprisingsending, by the first device, a third command over the maintainedcommunications link, the third command configured to re-establish thedisabled communications link.
 8. The method of claim 5, furthercomprising, prior to the disabling, determining identity of themaintained communications link based on an application running on thefirst device.
 9. The method of claim 5, further comprising, or to thedisabling, determining identity of the maintained communications linkbased on parameters stored on the first device.
 10. The method of claim5, further comprising, prior to the disabling, determining identity ofthe maintained communications link based on data bandwidth needs. 11.The method of claim 1, further comprising receiving, by the firstdevice, a second command over one of the first communications link andthe second communications link, the second command configured to disableone of the first communications link and the second communications linkto produce a disabled communications link, wherein a maintainedcommunications link corresponds to one of the first communications linkand the second communications link not disabled as a result of thesecond command.
 12. The method of claim 1, further comprising using, bythe first device, security information configured to provide additionalsecurity with respect to communications between the first device and thesecond device over the second communications link, wherein the securityinformation is transferred over the first communications link.
 13. Themethod of claim 1, wherein the first communications link corresponds toa Classic Bluetooth communications link, and the second communicationslink corresponds to a Bluetooth Low Energy communications link.
 14. Amethod comprising: detecting, at a first device, a wireless signaloriginating from a second device, the wireless signal indicatingavailability of a first communications link, the first communicationslink being a wireless communications link; sending, by the first device,first communications link setup information corresponding toestablishing the first communications link between the first device andthe second device; receiving, by the first device, a first command overthe first communications link; in response to the first command,advertising, by the first device, availability of a secondcommunications link, the second communications link being anotherwireless communications link having different characteristics than thefirst communications link; and in response to the first device receivinga response to the advertising, using, by the first device, setupinformation included in the response to the advertising to facilitateestablishing the second communications link.
 15. The method of claim 14,further comprising, in response to the first device not receiving aresponse to the advertising within a predetermined period of time,terminating the advertising.
 16. The method of claim 14, furthercomprising: generating a first security code by the first device;sending, by the first device, the first security code over the firstcommunications link; generating a second security code by the firstdevice; and sending, by the first device, the second security code overthe second communications link.
 17. The method of claim 14, furthercomprising: generating a security code by the firs device; sending thesecurity code over the first communications link; receiving a responsivecode over the second communications link; and comparing the responsivecode with the security code.
 18. The method of claim 17 furthercomprising: in response to a determination that the responsive code doesnot correspond to the security code, terminating the secondcommunications link.
 19. The method of claim 17 further comprising: inresponse to a determination that the responsive code does not correspondto the security code, providing an alert corresponding to thedetermination.
 20. The method of claim 14, further comprising disabling,by the first device, one of the first communications link and the secondcommunications link to produce a disabled communications link, wherein amaintained communications link corresponds to one of the firstcommunications link and the second communications link not disabled. 21.The method of claim 20, wherein the disabling further comprises sending,by the first device, a second command over one of the firstcommunications link and the second communications link.
 22. The methodof claim 21, further comprising sending, by the first device, a thirdcommand over the maintained communications link, the third commandconfigured to re-establish the disabled communications link.
 23. Themethod of claim 20, further comprising, prior to the disabling,determining identity of the maintained communications link based on anapplication running on the first device.
 24. The method of claim 20,further comprising, prior to the disabling, determining identity of themaintained communications link based on parameters stored on the firstdevice.
 25. The method of claim 20, further comprising, prior to thedisabling, determining identity of the maintained communications linkbased on data bandwidth needs.
 26. The method of claim 14, furthercomprising receiving by the first device, a second command over one ofthe first communications link and the second communications link, thesecond command configured to disable one of the first communicationslink and the second communications link to produce a disabledcommunications link, wherein a maintained communications linkcorresponds to one of the first communications link and the secondcommunications link not disabled as a result of the second command. 27.The method of claim 14, further comprising using, by the first device,security information configured to provide additional security withrespect to communications between the first device and the second deviceover the second communications link, wherein the security information istransferred over the first communications link.
 28. The method of claim14, wherein the first communications link corresponds to a ClassicBluetooth communications link, and the second communications linkcorresponds to a Bluetooth Low Energy communications link.